home *** CD-ROM | disk | FTP | other *** search
/ IRIX Base Documentation 2002 November / SGI IRIX Base Documentation 2002 November.iso / usr / share / catman / p_man / catD / userdma.z / userdma
Encoding:
Text File  |  2002-10-03  |  3.6 KB  |  67 lines

  1.  
  2.  
  3.  
  4. uuuusssseeeerrrrddddmmmmaaaa((((DDDD3333XXXX))))                                                      uuuusssseeeerrrrddddmmmmaaaa((((DDDD3333XXXX))))
  5.  
  6.  
  7.  
  8. NNNNAAAAMMMMEEEE
  9.      _uuuu_ssss_eeee_rrrr_dddd_mmmm_aaaa,_uuuu_nnnn_dddd_mmmm_aaaa - lock, unlock physical memory in user space
  10.  
  11. SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
  12.      _####_iiii_nnnn_cccc_llll_uuuu_dddd_eeee _""""_ssss_yyyy_ssss_////_tttt_yyyy_pppp_eeee_ssss_...._hhhh_""""
  13.      _####_iiii_nnnn_cccc_llll_uuuu_dddd_eeee _""""_ssss_yyyy_ssss_////_bbbb_uuuu_ffff_...._hhhh_""""
  14.  
  15.      _uuuu_ssss_eeee_rrrr_dddd_mmmm_aaaa_((((_vvvv_oooo_iiii_dddd _****_u_s_r__v__a_d_d_r_,,,, _ssss_iiii_zzzz_eeee______tttt _n_u_m__b_y_t_e_s_,,,, _iiii_nnnn_tttt _r_w _vvvv_oooo_iiii_dddd _****_M_B_Z_))))_;;;;
  16.  
  17.      _uuuu_nnnn_dddd_mmmm_aaaa_((((_vvvv_oooo_iiii_dddd _****_u_s_r__v__a_d_d_r_,,,, _ssss_iiii_zzzz_eeee______tttt _n_u_m__b_y_t_e_s_,,,, _iiii_nnnn_tttt _r_w_))))_;;;;
  18.  
  19.    AAAArrrrgggguuuummmmeeeennnnttttssss
  20.      _u_s_r__v__a_d_d_r
  21.           User process address space.
  22.  
  23.      _n_u_m__b_y_t_e_s
  24.           Number of bytes.
  25.  
  26.      _r_w   If set to _B__R_E_A_D, then the memory space will be readable upon return
  27.           from this call.  If set to _B__W_R_I_T_E, the memory will be writable upon
  28.           return.
  29.  
  30.      _M_B_Z must be set to 0.
  31.  
  32. DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
  33.      _uuuu_ssss_eeee_rrrr_dddd_mmmm_aaaa prepares memory before a DMA operation into or from a user
  34.      process' address space.  It locks the physical pages associated with
  35.      _n_u_m__b_y_t_e_s bytes of user virtual memory starting at location _u_s_r__v__a_d_d_r.
  36.      If the _r_w flag is set to _BBBB______RRRR_EEEE_AAAA_DDDD, then the memory space will be readable
  37.      upon return from this call.  If, however, the flag is set to _BBBB______WWWW_RRRR_IIII_TTTT_EEEE, the
  38.      memory will be writable upon return.  _uuuu_ssss_eeee_rrrr_dddd_mmmm_aaaa also invalidates the data
  39.      cache lines corresponding to the given address and count, if necessary.
  40.  
  41.      When the operation is complete, call _uuuu_nnnn_dddd_mmmm_aaaa to unlock these pages.
  42.  
  43. RRRREEEETTTTUUUURRRRNNNN VVVVAAAALLLLUUUUEEEESSSS
  44.      If _uuuu_ssss_eeee_rrrr_dddd_mmmm_aaaa is successful, it returns 0; otherwise, it returns an error
  45.      number as follows:
  46.  
  47.      _EEEE_FFFF_AAAA_UUUU_LLLL_TTTT
  48.           The user buffer was outside the allocated address space.
  49.  
  50.      _EEEE_AAAA_GGGG_AAAA_IIII_NNNN
  51.           Total amount of system memory to lock user pages is temporarily
  52.           insufficient.
  53.  
  54.      _EEEE_BBBB_UUUU_SSSS_YYYY
  55.           There is not enough kernel memory available to map the user pages to
  56.           kernel virtual memory.
  57.  
  58.  
  59.  
  60.  
  61.  
  62.  
  63.                                                                         PPPPaaaaggggeeee 1111
  64.  
  65.  
  66.  
  67.